import java.util.ArrayList;
import java.util.List;

public class Test {

        public static List<List<Integer>> generate(int numRows) {
            List<List<Integer>> num = new  ArrayList();
            List<Integer> list = new ArrayList();
            list.add(1);
            num.add(list);
            for(int i = 1; i < numRows;i++){
                List<Integer> curow = new ArrayList();
                curow.add(1);
                List<Integer> preCurow = num.get(i-1);
                for(int j = 1;j < i;j++){
                    int val = preCurow.get(j) + preCurow.get(j - 1);
                    curow.add(val);
                }
                curow.add(1);

                num.add(curow);
            }
            return num;

        }

    public static void main(String[] args) {
            generate(5);

    }
}
